/**********************************************************************************
* File name    :	DEVTrng_PR.c
* Function     :	
* Author       : 
* Date         :	
* Version      :  
* Description  :
* ModifyRecord :
**********************************************************************************/

/**********************************************************************************
* Include Header Files
**********************************************************************************/
#include <Utils/Type.h>
#include "DEVTrng_PR.h"
//#include "hrng.h"
//#include "DRBG.h"
#include "string.h"
#include <stdio.h>
#include <stdlib.h>
//#include <Windows.h>
//#include <Wincrypt.h>
#include <time.h>
/*******************************************************************************
 * Subrountine:	DEVTrng_PR_Init
 * Function:	
 * Input:		
 * Output:		
 * Description:	
 * Date:		
 * ModifyRecord:
*******************************************************************************/
//static HCRYPTPROV hCryptProv;

void DEVTrng_PR_Init(void)
{

//	static UINT8 IsInit = 0;
//	
//	if(!IsInit)
//	{
//		IsInit = 1;
//
//		if(SECSuccess == DRBG_Init())
//		{
//			if(SECSuccess == DRBG_HealthTesting())
//	 		{
//				return ;
//			}
//		}
		srand(time(NULL));
	
		 //CryptAcquireContext((HCRYPTPROV*)&hCryptProv,NULL,NULL,PROV_RSA_FULL,0);
//	}
	
	return ;	
}

/*******************************************************************************
 * Subrountine:	DEVTrng_PR_GenRandom
 * Function:	
 * Input:		
 * Output:		
 * Description:	
 * Date:		
 * ModifyRecord:
*******************************************************************************/
void DEVTrng_PR_GenRandom(UINT8 *pRand, UINT16 nLen)
{
	UINT32 i;

	//if(SECSuccess == DRBG_Generate(pRand, nLen, NULL, 0))
	//{
	//	return ;
	//}
	for(i=0;i<nLen;i++)
	{
		*pRand =rand();
		pRand++;
	}
	return ;
}
